The present invention relates to a process control technique and, more particularly, to a control method and apparatus which handle, as a controlled system, a relative quantity such as a state quantity difference in a control system having at least two control loops.
FIG. 53A shows the arrangement of a temperature controller as a conventional control apparatus. This temperature controller is disclosed in, for example, Japanese Patent Laid-Open No. 8-095647. Heat treatment work 1016 is loaded into a furnace 1001. A heater 1011, a detection means 1012 for detecting a control temperature TC1, a detection means 1013 for detecting a surface temperature TC2 of the work 1016, and a detection means 1014 for detecting a deepest temperature TC3 of the work 1016 are arranged in the furnace 1001. Reference numeral 1002 denotes a power regulator. A control unit 1003 includes a comparator 1031 which compares the control temperature TC1 with an execution program pattern set point 1033, a control computation unit 1032 such as a PID to be controlled by an output from the comparator 1031, a temperature difference detector 1034 which detects the difference between the surface temperature TC2 and deepest temperature TC3 of the work 1016, a temperature difference setting device 1035 which sets a predetermined temperature difference, a comparator 1036 which compares an output from the temperature difference detector 1034 with an output from the temperature difference setting device 1035, a rate-of-change detector 1038 which detects the temperature rate of change of the deepest temperature TC3, a comparator 1040 which compares an output from the rate-of-change detector 1038 with an output from a rate-of-change setting device 1039 which sets a predetermined temperature rate of change, and a gradient computing device 1037 which controls the execution program pattern set point 1033 by performing gradient computation on the basis of outputs from the comparator 1036 and comparator 1040.
A maximum allowable temperature difference is set in the temperature difference setting device 1035. A maximum allowable temperature rate of change is set in the rate-of-change setting device 1039. With the arrangement in FIG. 53A, the gradient in the execution program pattern set point 1033 is always corrected such that one or both of the temperature difference and the temperature rate of change in the heat treatment work 1016 fall within designated temperature allowable values.
Consider the portion enclosed by the broken line in FIG. 53A. It can be understood that state quantity transformation is performed to calculate a temperature difference (TC2-TC3) and temperature change of rate dTC3/dt on the basis of the plurality of measured temperatures TC1, TC2, and TC3. That is, the temperature controller in FIG. 53A includes a state quantity transformation unit 1041 which calculates the temperature difference (TC2-TC3) and temperature change of rate dTC3/dt (FIG. 53B).
FIG. 54A shows the arrangement of a temperature controller which is another conventional control apparatus. This temperature controller is disclosed in, for example, Japanese Patent Laid-Open No. 9-199491. Referring to FIG. 54A, reference numeral 2002 denotes a reaction tube of a vertical heat treatment apparatus 2020. The reaction tube 2002 incorporates a temperature sensor A which detects a temperature near a semiconductor wafer mounted on a wafer boat 2021, and is provided with a temperature sensor B which detects the temperature of the outer surface of the reaction tube 2002. A deviation circuit unit 2031 outputs the deviation obtained by subtracting a correction value (to be described later) from the desired value of the temperature sensor A, i.e., the desired value of the temperature sensor B. A deviation circuit unit 2032 outputs the deviation obtained by subtracting the detected value of the temperature sensor B from the desired value of the temperature sensor B to a PID adjustment unit 2004. The PID adjustment unit 2004 performs PID computation on the basis of the input deviation, and outputs the computation result to a power control unit 2005. The power control unit 2005 controls the amount of power supplied to a heater 2006 as a heat source for the vertical heat treatment apparatus 2020 on the basis of the output value from the PID adjustment unit 2004. When the detected value of the temperature sensor B converges to the desired value, a correction value output unit 2007 corrects the desired value of the temperature sensor B by a difference (A−B) between the detected value of the temperature sensor A at the point of time of this convergence and the detected value of the temperature sensor B as a correction value. With the arrangement in FIG. 54A, the detected value of the temperature sensor A converges to the desired value.
Consider the portion enclosed by the broken line in FIG. 54A. It can be understood that state quantity transformation is performed to calculate-the temperature difference (A−B) on the basis of a plurality of measured temperatures A and B. That is, the temperature controller in FIG. 54A includes a state quantity transformation unit 2008 which calculates the temperature difference (A−B) (FIG. 54B).
As described above, attempts have been made to input not only an actual state quantity itself but also a state quantity difference to a control system. When a control system is designed to handle a state quantity difference as a controlled system, in particularly, the above state quantity transformation unit is provided for the control system.
Consider here that in two control loops, a state quantity mean value PV1′ and state quantity difference PV2′ are controlled systems instead of state quantities PV1 and PV2 themselves. FIG. 55 shows a control apparatus in this case. The control apparatus in FIG. 55 includes a subtractor 3001 which outputs the difference between the state quantity mean value PV1′ and a set point SP1′ with respect to the state quantity mean value PV1′, a subtractor 3002 which outputs the difference between the state quantity difference PV2′ and a set point SP2′ with respect to the state quantity difference PV2′, controllers C1 and C2 which respectively calculate manipulated variables MV1 and MV2 on the basis of outputs from the subtractors 3001 and 3002, actuators A1 and A2 which respectively perform operations corresponding to the manipulated variables MV1 and MV2 with respect to controlled system processes P1 and P2, and a state quantity transformation unit 3003.
The state quantity transformation unit 3003 comprises multipliers 3004 and 3005 which respectively multiply the state quantities PV1 and PV2 of the controlled system processes P1 and P2 by 0.5, multipliers 3006 and 3007 which respectively multiply the state quantities PV1 and PV2 by −1 and 1, an adder 3008 which adds outputs from the multipliers 3004 and 3005, and an adder 3009 which adds outputs from the multipliers 3006 and 3007. With the state quantity transformation unit 3003, the state quantity mean values PV1′ and PV2′ are obtained byPV1′=0.5PV1+0.5PV2  (1)PV2′=PV2−PV1  (2)
In addition, the input/output relationship of the state quantity transformation unit 3003 can be expressed by a matrix as follows:
                              [                                                                      PV1                  ′                                                                                                      PV2                  ′                                                              ]                =                              [                                                            0.5                                                  0.5                                                                                                  -                    1.0                                                                    1.0                                                      ]                    ⁡                      [                                                            PV1                                                                              PV2                                                      ]                                              (        3        )            
Assume that the controller C1 is targeted at the state quantity mean value PV1′, and the controller C2 is targeted at the state quantity difference PV2′. The controller C1 calculates the manipulated variable MV1 on the basis of the deviation between the set point SP1′ and the state quantity mean value PV1′. The controller C2 calculates the manipulated variable MV2 on the basis of the deviation between the set point SP2′ and the state quantity difference PV2′. At this time, in order to make the state quantity mean values PV1′ and PV2′ controllable, the manipulated variable MV1 calculated by the controller C1 is sent to the actuator A1, and the manipulated variable MV2 calculated by the controller C2 is sent to the actuator A2. This arrangement allows the actuator A1 to operate to control the state quantity mean value PV1′, and allows the actuator A2 to operate to control the state quantity difference PV2′. Applying only the state quantity transformation unit 3003 similar to that shown in FIG. 53B or 54B to the above arrangement makes it possible to form a multi-loop control system including the controller C1 which directly controls the state quantity mean value PV1′ and the controller C2 which directly controls the state quantity difference PV2′, thereby controlling the state quantity mean value PV1′ and state quantity difference PV2′ to desired values.
When, however, a change occurs in the state quantity PV1 due to the operation of the actuator A1, the change also influences the state quantity difference PV2′ owing to the function of the state quantity transformation unit 3003. Likewise, when a change occurs in the state quantity PV2 due to the operation of the actuator A2, the change also influences the state quantity mean value PV1′ owing to the function of the state quantity transformation unit 3003. That is, the control apparatus shown in FIG. 55 is configured such that inter-loop interference is artificially caused by the state quantity transformation unit 3003.
Both the coefficients by which the state quantities PV1 and PV2 are multiplied to calculate the state quantity mean value PV1′ are 0.5. Assuming, therefore, that a process gain Kp1 of the controlled system process P1 is almost equal to a process gain Kp2 of the controlled system process P2, the degree of influence of the operation of the actuator A1 on the state quantity mean value PV1′ is almost equal to the degree of influence of the operation of the actuator A2 on the state quantity mean value PV1′ (the degree of influence corresponding to the disturbance of the state quantity mean value PV1′ due to the actuator A2). Likewise, both the coefficients by which the state quantities PV1 and PV2 are multiplied to calculate the state quantity difference PV2′ are 1. The degree of influence of the operation of the actuator A2 on the state quantity difference PV2′ is almost equal to the degree of influence of the operation of the actuator A1 on the state quantity difference PV2′ (the degree of influence corresponding to the disturbance of the state quantity difference PV2′ due to the actuator A1). If, therefore, the state quantity transformation unit is simply applied to the control apparatus, the artificial inter-loop interference essentially tends to increase. This tends to cause a deterioration in controllability.
In order to realize the elimination of inter-loop interference, it is easily conceivable to apply the cross controller disclosed in Kazuo Hiroi, “Basis and Application of Digital Implementation Control System”, Kogyo Gijutusha, October 1987, pp. 152-156, ISBN4-905957-00-1 to the control apparatus. FIG. 56 shows the control apparatus disclosed in this reference. The control apparatus in FIG. 56 includes a subtractor 4001 which outputs the difference between a set point SP1 and a state quantity PV1, a subtractor 4002 which outputs the difference between a set point SP2 and a state quantity PV2, controllers 4003 and 4004 which respectively calculate manipulated variables MV1 and MV2 on the basis of outputs from the subtractors 4001 and 4002, and a cross controller 4005 which outputs manipulated variables MV1′ and MV2′ obtained by transforming the manipulated variables MV1 and MV2.
The cross controller 4005 performs the processing of canceling out the influences of inter-loop interference with respect to the manipulated variables MV1 and MV2 in advance, and comprises a multiplier 4007 which multiplies the manipulated variable MV1 by a coefficient M12, a multiplier 4008 which multiplies the manipulated variable MV2 by a coefficient M21, a subtractor 4009 which outputs the difference between the manipulated variable MV1 and an output from the multiplier 4008 as the manipulated variable MV1′, and a subtractor 4010 which outputs the difference between the manipulated variable MV2 and an output from the multiplier 4007 as the manipulated variable MV2′. For the sake of simple explanation, assume that dynamic characteristics such as a process time constant and process dead time are neglected. Assume that the process gains of a controlled system process 4006 which are respectively set for the manipulated variables MV1′ and MV2′ are represented by Kp1 and Kp2. In this case, according to Kazuo Hiroi, “Basis and Application of Digital Implementation Control System”, Kogyo Gijutusha, October 1987, pp. 152-156, ISBN4-905957-00-1, the cross controller 4005 for non-interference can be designed as follows:MV1′=MV1+(−0.5 Kp2/0.5 Kp1)MV2  (4)MV2′=(Kp1/Kp2)MV1+MV2  (5)
In addition, the input/output relationship of the cross controller 4005 can be expressed by a matrix as follows:
                              [                                                                      MV1                  ′                                                                                                      MV2                  ′                                                              ]                =                              [                                                            1.0                                                                      -                                                                  0.5                        ⁢                        Kp2                                                                    0.5                        ⁢                        Kp1                                                                                                                                                              Kp1                    Kp2                                                                    1.0                                                      ]                    ⁡                      [                                                            MV1                                                                              MV2                                                      ]                                              (        6        )            
That is, the above coefficient M12 becomes −Kp1/Kp2, and the coefficient M21 becomes 0.5Kp2/0.5Kp1. The manipulated variable MV1 calculated by the controller 4003 is transformed into the manipulated variable MV1′ by the cross controller 4005 and is then sent to the controlled system process 4006 through an actuator (not shown). The manipulated variable MV2 calculated by the controller 4004 is transformed into the manipulated variable MV2′ by the cross controller 4005 and is then sent to the controlled system process 4006 through the actuator.
FIG. 57 shows an arrangement in which the cross controller 4005 shown in FIG. 56 is applied to the control apparatus in FIG. 55. Using the state quantity transformation unit 3003 and cross controller 4005 makes it possible to realize a multi-loop control system having the first control loop mainly based on the controller C1 which exclusively controls only the state quantity mean value PV1′ and the second control loop mainly based on the controller C2 which exclusively controls only the state quantity difference PV2′. If the response characteristic of the controller C1 which exclusively controls on only the state quantity mean value PV1′ is adjusted in the direction to give importance to stability (low sensitivity) and the response characteristic of the controller C2 which exclusively controls only the state quantity difference PV2′ is adjusted in the direction to give importance to quick response (high sensitivity), the state quantity difference PV2′ follows up the set point SP2′ before the state quantity mean value PV1′ follows up the set point SP1′. This makes it possible to perform control to change the state quantity mean value PV1′ to a desired value while maintaining the state quantity difference PV2′ at a desired value.
First Problem
The output of an actual actuator has its upper and lower limits. A controller must perform manipulated variable calculation in consideration of the upper and lower limits of this output. That is, when the output of the actuator has reached its upper or lower limit and a change in state quantity has reached its limit, the controller must not increase or decrease the manipulated variable calculation result more than necessary. If a controller such as a PID controller gives no consideration to the physical upper and lower limits of an actuator, the integration windup problem arises.
This integration windup will be described below. Assume that a state quantity is a temperature and an actuator is a heater. In general, the constrains of a lower limit value of 0% and an upper limit value of 100% are provided for the heater output. When a manipulated variable MV calculated by the controller increases to reach 100%, the heater output reaches 100%. Assume that at this time, a measured temperature value PV is lower than a temperature set point SP. In this case, if the controller neglects the upper limit value “100%” of the heater output, the controller calculates a manipulated variable MV larger than 100%. However, since the heater output saturates at 100%, an increase in the measured temperature value PV with an increase in heater output reaches its limit. As a result, the controller further increases the manipulated variable MV.
Assume that when the calculated value of the manipulated variable MV keeps increasing and reaches 500%, the temperature set point SP is changed to a value lower than the measured temperature value PV. In this case, as the temperature set point SP is changed, the controller decreases the manipulated variable MV from 500%, it takes a long period of time until a manipulated variable MV lower than the upper limit value “100%” of the heater output is output from the controller. Although the temperature set point SP is changed to a value lower than the measured temperature value PV, the manipulated variable “100%” is kept output from the controller for a long period of time. This causes a long delay in the start of temperature drop. The phenomenon in which when the calculation result of the manipulated variable MV increases more than necessary and the temperature set point SP is changed to a smaller value, a decrease in the manipulated variable MV is delayed is called integration windup. This phenomenon is caused when the controller calculates a manipulated variable without any consideration to the physical upper and lower limits of the actuator.
In the control apparatus shown in FIG. 57, the manipulated variables MV1 and MV2 calculated by the controllers C1 and C2 are transformed into the manipulated variables MV1′ and MV2′ by the cross controller 4005. In other words, the manipulated variables MV1 and MV2 calculated by the controllers C1 and C2 are calculated as a composite manipulated variable for the plurality of actuators A1 and A2, and hence the manipulated variables MV1 an MV2 from the controllers C1 and C2 do not correspond to outputs from the actuators A1 and A2 on a one-to-one basis. Even if, therefore, the controllers C1 and C2 calculate the manipulated variables MV1 and MV2 in consideration of the upper and lower limits of outputs from the actuators A1 and A2, since the values actually output to the actuators A1 and A2 are the manipulated variables MV1′ and MV2′ obtained by combining the manipulated variables MV1 and MV2, manipulated variables obtained without any consideration to the upper and lower limits of outputs from the actuators A1 and A2 may be output, in effect, to the actuators A1 and A2. For this reason, in the control apparatus shown in FIG. 57, integration windup problem similar to that in the above PID controller may arise.
Second Problem
A general controller needs to adjust parameters in accordance with the characteristics of a controlled system. As an example of parameter adjustment, PID parameter adjustment is performed in a PID controller. Adjustment methods, automatic adjustment functions, and the like have been proposed to realize such parameter adjustment. A necessary condition for such adjustment methods and automatic adjustment functions is that a controller, actuator, controlled system, and measurement means basically physically correspond to each other.
Conventional parameter adjustment will be specifically described below. Consider, for example, a case wherein a state quantity is a temperature, an actuator is a heater, a controlled system is a furnace, and a measurement means is a temperature sensor such as a thermocouple. Assume that there are two control loops, which respectively comprise controllers 5003 and 5004, heaters 5005 and 5006 as actuators, furnaces 5007 and 5008 as controlled systems, and temperature sensors 5009 and 5010 as measurement means, as shown in FIG. 58. Referring to FIG. 58, reference numeral 5001 denotes a subtractor which outputs the difference between a temperature set point SP1 and a measured temperature value PV1; and 5002, a subtractor which outputs the difference between a temperature set point SP2 and a measured temperature value PV2.
In the arrangement shown in FIG. 58, although some inter-loop interference is allowed, the controller 5003 must execute control computation such that the controller 5003 outputs a manipulated variable MV1 to the heater 5005, the heater 5005 heats the furnace 5007, the temperature sensor 5009 measures a temperature near the furnace 5007, and the controller 5003 controls a measured temperature value PV1. Likewise, the controller 5004 must execute control computation such that the controller 5004 outputs a manipulated variable MV2 to the heater 5006, the heater 5006 heats the furnace 5008, the temperature sensor 5010 measures a temperature near the furnace 5008, and the controller 5004 controls a measured temperature value PV2. Making the controllers 5003 and 5004, the heaters 5005 and 5006, the furnaces 5007 and 5008, and the temperature sensors 5009 and 5010 physically correspond to each other in this manner is a necessary condition to apply a conventionally proposed adjustment method or automatic adjustment function to a control apparatus. Conversely, if the controller 5003 calculates, as one composite manipulated variable, the manipulated variables MV1 and MV2 which are distributed to the heaters 5005 and 5006 at an equal level, and the controller 5004 calculates, as one composite manipulated variable, the manipulated variables MV1 and MV2 which are distributed to the heaters 5005 and 5006 at an equal level, it is impossible to apply any conventionally proposed adjustment method or automatic adjustment function to a control apparatus.
In the control apparatus shown in FIG. 57, the manipulated variables MV1 and MV2 calculated by the controllers C1 and C2 are transformed into the manipulated variables MV1′ and MV2′ by the cross controller 4005. In other words, the manipulated variables MV1 and MV2 calculated by the controllers C1 and C2 are calculated as a composite manipulated variable to the plurality of actuators A1 and A2, and the manipulated variables MV1 and MV2 calculated by the controllers C1 and C2 do not correspond to outputs from the actuators A1 and A2 on a one-to-one basis. That is, this does not meet the basic condition that a controller, actuator, controlled system, and measurement means should physically correspond to each other. Therefore, any conventionally proposed adjustment method or automatic adjustment function cannot be applied to the control apparatus shown in FIG. 57, and it is very difficult to realize parameter adjustment for a controller such as PID parameter adjustment.